The new generation of 56 kbps modem systems utilize a number of techniques that differ from conventional analog modems (e.g., modems compatible with the V.34 standard). 56 kbps modem systems employ pulse code modulation (PCM) technology to facilitate higher downstream transmission data rates to an end user. For example, FIG. 1 depicts a conceptual diagram of a typical 56 kbps communication path using current PCM modem technology. A central site, such as an internet service provider (ISP) 100, is digitally connected to a telephone network 130 through a transmitter 110 and a receiver 120 of an ISP modem 105. The network 130 is connected to a local loop 150 through a central office line card 140. The line card typically has a PCM codec implemented therein. The local loop 150 is connected to the user's personal computer (PC) 170 at the user's site through the user's modem 160. As can be appreciated by those skilled in the art, the connection between the ISP modem transmitter 110 to the telephone network 130 is a digital connection with a typical data rate of about 64 kbps. Since the parameters of the telephone network 130 and line card 140 are dictated and set by the operating specifications of the network (and particularly the use of the .mu.-law or A-law signal point constellations), the central site transmitter 110 is configured to transmit the digital data in a particular way to fully exploit its digital connection to the network.
A proposed operating protocol for 56 kbps PCM modem systems calls for the use of a data transmission scheme that performs multiple modulus conversion (MMC) on a number of bits that may be provided by a suitable scrambler or other processing element. Betts et al., U.S. Pat. No. 5,475,711, issued Dec. 12, 1994 and Betts et al., U.S. Pat. No. 5,684,834, issued Nov. 4, 1997, disclose data transmission systems that utilize single modulus converters in different contexts. MMC, on the other hand, is a known technique for expressing an integer number as a sum of quotients containing multiple moduli (or bases). A technical contribution by Dale Walsh entitled Multiple Modulus Conversion for Robbed Bit Signaling Channels (TIA TR30 Meetings, Mar. 4, 1997) sets forth a general manner in which MMC may be used in the context of 56 kbps modem systems. The entire content of these publications is incorporated herein by reference.
In accordance with the MMC process, an integer (R) may be expressed as: EQU R=K.sub.0 +K.sub.1 M.sub.0 +K.sub.2 M.sub.0 M.sub.1 + . . . +K.sub.L-1 M.sub.0 M.sub.1 . . . M.sub.L-2,
where L is the number of symbols per frame, M.sub.i are the mapping moduli (the mapping moduli also represent the number of signal point magnitudes contained in the signal point constellation associated with the i-th data frame phase), and 0.ltoreq.K.sub.i &lt;M.sub.i. In a 56 kbps modem application, the multiple moduli M.sub.i (which are determined prior to mapping) are used to map a number of bits expressed as an integer number R. In the 56 kbps modem context, MMC operates in the absence of sign bits; sign bits are removed prior to the MMC process and replaced afterward. The MMC process generates the values of K.sub.i, which represent mapping indices associated with the respective signal point constellations. Thus, each K.sub.i value is used to select a particular PCM codeword for transmission over the telephone network. Upon decoding at the receiving modem, the original digital data is recovered (assuming no transmission errors).
Currently proposed mapping and encoding protocols for 56 kbps modems often may not produce the most efficient data communication session from a transmission power perspective. Transmission power limitations arc mandated by regulatory bodies such as the Federal Communications Commission (FCC). For example, current FCC regulations on modem transmissions over the public telephone network require that average power levels do not exceed -12 dBm. Accordingly, the particular codewords associated with each transmission session, and the manner with which such codewords are transmitted, may be selected to ensure that the given power level is not exceeded. On the other hand, unnecessarily low power levels may cause a low system signal to noise ratio (SNR), which can result in an increased probability of errors and otherwise poor system performance.
One current 56 kbps modem system utilizes signal point constellations with codewords having descending magnitudes relative to the index values. In other words, using the above example, the magnitudes of the codewords associated with constellation M.sub.1 decrease as the value of index K.sub.1 increases. The K.sub.i values are derived by the MMC procedure in a manner such that, for any given constellation, the lower values for a given index K.sub.i may occur more frequently than higher values for that index. Consequently, for a modem system that uses a descending magnitude scheme, codewords requiring relatively higher transmit power are transmitted more often than codewords requiring relatively lower transmit power. The high transmission probability associated with the larger magnitude codewords results in a communication system having an inefficient allocation of allowable transmit power.
As mentioned above, regulatory bodies may place limits on the total average power utilized for a given data communication session. Accordingly, after the appropriate signal point constellations are selected, the total average transmit power may be calculated to ensure that it does not exceed the power limit. Unfortunately, the total average transmit power associated with a 56 kbps modem system may not be readily obtainable. Thus, the total average transmit power is often conservatively estimated for purposes of comparison to the power limit. However, such conservative estimates may result in the use of less than optimal constellations, lower system SNR, smaller minimum distances between constellation points, and a higher likelihood of errors.
In accordance with a proposed exemplary 56 kbps modem system, six symbols are transmitted in each data frame, six moduli (M.sub.0 -M.sub.5) are employed in the MMC process, and six corresponding signal point constellations are utilized during mapping to produce one of a plurality of universal PCM codewords. These PCM codewords are eventually transmitted on a symbol by symbol basis. The symbol associated with the M.sub.0 -point constellation is transmitted first in time, the symbol associated with the M.sub.5 -point constellation is transmitted last in time, and the other symbols follow in a like temporal order. Although this arrangement is logical and easy to implement, it may not be suitable in situations where specific cost functions, such as transmit power, are to be considered. For example, following the proposed rigid transmit order may not adequately take advantage of, or compensate for, the presence of robbed bit signaling (RBS) within the telephone network.
Consequently, it would be desirable to implement improved techniques in conjunction with MMC processes to address the above shortcomings of proposed 56 kbps modem systems.